// JavaScript Document
function print_grid(){
	$("#list").jqGrid({
    //Pagina a la que se van a mandar los datos
    url:'clientes/backend.php?action=grid', 
     // Tipo de datos "JSON" es una alternativa a XML
		datatype: "json", 
		// Nombres de las columnas del jqgrid
		colNames:['Id','Cliente','Dirección','Localidad','Provincia','Teléfono','Email','Proveedor'], 
		//Id de las columnas de la tabla articulos que se pasaran al jqgrid
		colModel:[ 
			{name:'id_cliente',index:'id_cliente', width:40, align:'center'}, 
			{name:'nombre',index:'nombre', width:230, align:'center'},
			{name:'direccion',index:'direccion', width:190, align:'center'},
			{name:'localidad',index:'localidad', width:150, align:'center'},
			{name:'provincia',index:'provincia', width:120, align:'center'},
			{name:'telefono',index:'telefono', width:120, align:'center'},
			{name:'email',index:'email', width:250, align:'center'},
			{name:'id_proveedor',index:'id_proveedor', width:110, align:'center'}
		], 
		//Se especifica el alto y el ancho del jqgrid
		rowNum:15, 
		height:280,
		width:780,
		rowList:[15,30,45], 
		//Cabecera del jqgrid
		pager: '#pager', 
		sortname: 'id_cliente', 
		//Autodimensionarse
		autowidth: false,
		//Ordenar los datos
		viewrecords: true, 
		//Manera de ordenar los datos
		sortorder: "asc", 
		// Títulos del jqgrid
		caption:"Gesti&oacute;n B&aacute;sica de Clientes",
		//pgbuttons:false,
		//pginput:false
    });
	
	//Desactiva todos los botones y funciones del jqgrid
	$("#list").jqGrid('navGrid','#pager',{add:false,edit:false,del:false,search:false,refresh:false}); 
	//Añade un botón en el pies del jqgrid
		//Se crea un "botón" insertar en el pie 
	$("#list").jqGrid('navButtonAdd','#pager',{
		caption: "Insertar    ",
		buttonicon :'ui-icon-plus',
		onClickButton : function (){ 
			nuevoperfil();
		} 
	}); 
		//Se crea un texto hipervinculado a modificar
	$("#list").jqGrid('navButtonAdd','#pager',{
		caption: "Modificar   ", 
		buttonicon :'ui-icon-pencil',
		onClickButton : function (){ 
			modificar();
		} 
	}); 
		//Se crea un "botón" borrar en el pie de página
	$("#list").jqGrid('navButtonAdd','#pager',{
		caption: "Borrar    ", 
		buttonicon :'ui-icon-trash',
		onClickButton : function (){ 
			borrar();
		} 
	}); 
	$("#list").jqGrid('filterToolbar'); 
}

 //Esta función inserta un nuevo artículo a la lista de articulos
function nuevoperfil(){	 
$.get("clientes/backend.php?action=form", function(data){
		$('#jqgrid_list').css('display','none');
		$('#formulario').html(data);
		$('#formulario').css('display','');
	});
	return false;
}

// Esta función modifica los artículos que ya hay en la lista
function modificar(){
	var id_cliente = $("#list").jqGrid('getGridParam','selrow'); 	
	if( id_cliente == null ){
		alert("Para modificar un registro debe seleccionarlo previamente."); 
	}else{
		$.get("clientes/backend.php?action=form&id_cliente="+id_cliente, function(data){
			$('#jqgrid_list').css('display','none');
			$('#formulario').html(data);
			$('#formulario').css('display','');
		});
	}
	return false;
}

//Esta función borra los artículos de la lista
function borrar(){	
	var id_cliente = $("#list").jqGrid('getGridParam','selrow'); 
	if( id_cliente == null ){
		alert("Para modificar un registro debe seleccionarlo previamente."); 
	}else{
		if(!confirm("¿Está seguro de que desea eliminar el registro seleccionado?")){
			exit(); 
		}
		$.get("clientes/backend.php?action=borrar&id_cliente="+id_cliente, function(data){
			$("#list").trigger("reloadGrid");
		});
	}
	return false;
}

//Esta funcion guarda los cambios que se han realizado en las funciones anteriores
function guardar(action){
		
	if(comprobar_datos()==true)
	{
	
		$.get("clientes/backend.php?action="+action,$("#form_datos").serialize(), function(data){
			
				switch(data){
					case 'OK':
					
						$('#jqgrid_list').css('display','');
						$('#formulario').html('');
						$('#formulario').css('display','none');
						$("#list").trigger("reloadGrid");
						break;					
							}							

		});
	}

	return false;
}

// Limpia los títulos en los que se muestran los errores
function reiniciar_titulos(){
	//Se crea el array de nombre
	contenedores = new Array('nombre');
	
	for(i=0;i<contenedores.length;i++){
		//Controla el metodo 
		document.getElementById('cont_'+contenedores[i]).style.color= "#000000";
		document.getElementById('cont_'+contenedores[i]).style.fontWeight= "normal";
	}
}

//Frases de error al guardar un campo
function titulo_error(var_cont){
	reiniciar_titulos();
	document.getElementById('cont_'+var_cont).style.color= "red";
	document.getElementById('cont_'+var_cont).style.fontWeight= "bold";			
	document.getElementById('contenedor').innerHTML = "<font color='red'><b>Hay campos err&oacute;neos o sin cumplimentar</b></font>";
}

// Funcion que comprueba que solo se pueda introducir números 
function comprobar_solonumeros(evt){

	//asignamos el valor de la tecla a keynum
	if(window.event){// IE
		keynum = evt.keyCode;
	}else{
			keynum = evt.which;
		}
		
	//comprobamos si se encuentra en el rango
	if((keynum>47 && keynum<58) || (keynum==8) || (keynum==0) || (keynum==13)){
		return true;
	}else{
			return false;
		}
}
						
//Esta es la funcion de salir
function volver()
{
	$('#jqgrid_list').css('display','');
	$('#formulario').html('');
	$('#formulario').css('display','none');
}
